﻿using Windows.UI.Xaml.Controls;

namespace MicroMVVM.Navigation
{
    /// <summary>
    /// Represents the interface for a navigatable viewmodel
    /// </summary>
    public interface INavigation
    {
        /// <summary>
        /// Gets/Sets the current frame for this viewmodel.
        /// </summary>
        Frame Current { get; set; }

        /// <summary>
        /// On navigating away from the current view.
        /// </summary>
        void OnNavigating();

        /// <summary>
        /// On finished navigating to the current view.
        /// </summary>
        /// <param name="parameter"></param>
        void OnNavigated(object parameter);
    }
}